using System;
using ns27;
using Triton.Game.Mono;

namespace Triton.Game.Mapping
{
	[Attribute38("CloudStorageManager")]
	public class CloudStorageManager : MonoBehaviour
	{
		public static CloudStorageManager s_Instance => MonoClass.smethod_7<CloudStorageManager>(TritonHs.MainAssemblyPath, "", "CloudStorageManager", "s_Instance");

		public bool m_isInitialized => method_2<bool>("m_isInitialized");

		public bool m_isInitializing => method_2<bool>("m_isInitializing");

		public bool m_isShowingContext => method_2<bool>("m_isShowingContext");

		public bool m_continueInitialize => method_2<bool>("m_continueInitialize");

		public bool m_isConnecting => method_2<bool>("m_isConnecting");

		public bool m_isAPIUnavailable => method_2<bool>("m_isAPIUnavailable");

		public bool m_isSignInRequired => method_2<bool>("m_isSignInRequired");

		public bool m_isShowingThirdPartyPermission => method_2<bool>("m_isShowingThirdPartyPermission");

		public CloudStorageManager(IntPtr address, string className)
			: base(address, className)
		{
		}

		public CloudStorageManager(IntPtr address)
			: this(address, "CloudStorageManager")
		{
		}

		public static CloudStorageManager Get()
		{
			return MonoClass.smethod_15<CloudStorageManager>(TritonHs.MainAssemblyPath, "", "CloudStorageManager", "Get", Array.Empty<object>());
		}

		public static bool ShouldDisallowCloudStorage()
		{
			return MonoClass.smethod_14<bool>(TritonHs.MainAssemblyPath, "", "CloudStorageManager", "ShouldDisallowCloudStorage", Array.Empty<object>());
		}

		public static void CloudSetString(string key, string value)
		{
			MonoClass.smethod_18(TritonHs.MainAssemblyPath, "", "CloudStorageManager", "CloudSetString", key, value);
		}

		public static string CloudGetString(string key)
		{
			return MonoClass.smethod_12(TritonHs.MainAssemblyPath, "", "CloudStorageManager", "CloudGetString", key);
		}

		public static void CloudRemoveObject(string key)
		{
			MonoClass.smethod_18(TritonHs.MainAssemblyPath, "", "CloudStorageManager", "CloudRemoveObject", key);
		}

		public void Awake()
		{
			method_8("Awake");
		}

		public void OnDestroy()
		{
			method_8("OnDestroy");
		}

		public void OnApplicationPause(bool pauseStatus)
		{
			method_8("OnApplicationPause", pauseStatus);
		}

		public void DisallowCloudStorage()
		{
			method_8("DisallowCloudStorage");
		}

		public void ShowCloudStorageContext(string contextBody)
		{
			method_8("ShowCloudStorageContext", contextBody);
		}

		public void OnCloudStorageContextResponse(AlertPopup.Response response, object userData)
		{
			method_8("OnCloudStorageContextResponse", response, userData);
		}

		public void SetString(string key, string value)
		{
			method_8("SetString", key, value);
		}

		public string GetString(string key)
		{
			return method_13("GetString", key);
		}

		public void RemoveObject(string key)
		{
			method_8("RemoveObject", key);
		}

		public bool IsShowingContext()
		{
			return method_11<bool>("IsShowingContext", Array.Empty<object>());
		}

		public bool ContinueInitialize()
		{
			return method_11<bool>("ContinueInitialize", Array.Empty<object>());
		}

		public bool GetIsShowingThirdPartyPermission()
		{
			return method_11<bool>("GetIsShowingThirdPartyPermission", Array.Empty<object>());
		}

		public bool IsConnecting()
		{
			return method_11<bool>("IsConnecting", Array.Empty<object>());
		}

		public bool IsAPIUnavailable()
		{
			return method_11<bool>("IsAPIUnavailable", Array.Empty<object>());
		}

		public bool IsSignInRequired()
		{
			return method_11<bool>("IsSignInRequired", Array.Empty<object>());
		}

		public void APIUnavailable()
		{
			method_8("APIUnavailable");
		}

		public void APISignInRequired()
		{
			method_8("APISignInRequired");
		}

		public void APIConnected()
		{
			method_8("APIConnected");
		}
	}
}
